// 1.引入 vuex 需要先安装
import {
    createStore
} from 'vuex'

import createPersistedState from 'vuex-persistedstate'

// 创建一个新的 stores 实例
const store = createStore({
    state: {
        count: 10,
        token: '',
        msg: 'vue3 项目'
    },
    mutations: {
        addCount(state) {
            state.count++
        }
    },
    actions: {
        asyncAddCount(context) {

            setTimeout(() => {
                context.commit('addCount')
            }, 2000);
        }
    },
    getters: {},
    modules: {},

    // 存储 state所有的数据
        plugins:[createPersistedState({
            storage:window.localStorage
        })]


    // 存储单个数据 自定义
    // plugins: [createPersistedState({
    //     storage: window.localStorage,
    //     reducer(val) {
    //         console.log(val);
    //         return {
    //             // 只存储state中的assessmentData
    //             myMsg: val.msg
    //         }
    //     }           
    // })]
})  

//3.到处实例
export default store